class CQueue {
    
    private Stack<Integer> stack1;//存数据
    private Stack<Integer> stack2;//辅助
    private int size=0;//记录个数

    //队列的特性：先进先出，后进后出，如果用stack保存，则要求每次增加的元素保存在stack的底部，删除则直接弹出
    public CQueue() {
        stack1 = new Stack<>();
        stack2 = new Stack<>();
    }
    
    public void appendTail(int value) {
        if(size==0){
            stack1.push(value);
            size++;
        }else{
            for(int i=0;i<size;i++){
                stack2.push(stack1.pop());
            }
            stack1.push(value);
            for(int i=0;i<size;i++){
                stack1.push(stack2.pop());
            }
            size++;
        }
    }
    
    public int deleteHead() {
        if(size==0){
            return -1;
        }else{
            size--;
            return stack1.pop();
        }
    }
}